import axios from "axios";

import {Message} from "element-ui";
import router from "../router";


axios.interceptors.request.use(config=>{
    if (window.sessionStorage.getItem("tokenStr")){
        config.headers['Authorization']= window.sessionStorage.getItem('tokenStr');
    }
    return config;
},error => {

})

// 响应拦截器
axios.interceptors.response.use(success=>{
    if (success.status&&success.status==200){
        if (success.data.code==401||success.data.code==403||success.data.code==500){
            Message.error({message:success.data.message});
            return
        }
        if (success.data.message)
            Message.success({message:success.data.message});
    }
    return success.data;
},error => {
    console.log(error)
    // 接口都访问不到
    if (error.response.code==504){
        Message.error({message:'服务器被吃了o(╥﹏╥)o'})
    }if (error.response.code==403){
        Message.error({message:'权限不足'})
    }if (error.response.code==401){
        Message.error({message:'未登录'})
        router.replace('/')
    }else {
        if(error.response.data.message){
            Message.error({message:error.response.data.message})
        }else{
            Message.error({message:'未知错误'})
        }
    }
    return;
})

let base='/api'
export const getRequest = (url, params) => {
    return axios({
        method: 'get',
        url: `${base}${url}`,
        data: params
    })
}
export const postRequest = (url, params) => {
    return axios({
        method: 'post',
        url: `${base}${url}`,
        data: params
    })
}
export const putRequest = (url, params) => {
    return axios({
        method: 'put',
        url: `${base}${url}`,
        data: params
    })
}
export const deleteRequest = (url, params) => {
    return axios({
        method: 'delete',
        url: `${base}${url}`,
        data: params
    })
}









